package com.party.common.kcsm;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.party.common.annotation.Excel;
import com.party.common.core.domain.BaseEntity;
import lombok.*;

import java.math.BigDecimal;
import java.util.List;

/**
 * 学员信息对象 student_info
 *
 * @author ruoyi
 * @date 2025-05-29
 */
@Data
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class StudentInfo extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    private String id;

    /**
     * "学员id"
     */
    private String userId;

    /**
     * "学员编号"
     */
    private String code;

    /**
     * "姓名"
     */
    private String name;

    /**
     * "性别"
     */
    private String sex;

    /**
     * "年级"
     */
    private String level;

    /**
     * "家长联系方式"
     */
    private String linkPhone;

    /**
     * "家长反馈分数"
     */
    private String userRemark;

    /**
     * "家长反馈等级"
     */
    private String userScore;

    /**
     * "家长反馈"
     */
    private String userGrade;

    /**
     * "手机号"
     */
    private String phone;

    /**
     * "推荐人姓名"
     */
    private String recName;

    /**
     * "推荐手机号"
     */
    private String recPhone;

    /**
     * "门店id"
     */
    private String storeUserId;

    /**
     * "门店编号"
     */
    private String storeCode;

    /**
     * "门店名称"
     */
    private String storeName;

    /**
     * "首次上课时间"
     */
    private String firstTime;

    /**
     * "是否建群 0：是  1：否"
     */
    private String isAddGroup;

    /**
     * "学管师id"
     */
    private String learnId;

    /**
     * "上课教练id"
     */
    private String coachId;

    /**
     * "教练接单状态  0:未接单 1：已接单 2：已退单"
     */
    private String coachOrderStatus;

    /**
     * "已购学时"
     */
    private String buyLearnTime;

    /**
     * "交付学时"
     */
    private String payLearnTime;

    /**
     * "已退学时"
     */
    private String retreatLearnTime;

    /**
     * "剩余学时"
     */
    private String surplusLearnTime;

    /**
     * "课程id"
     */
    private String classId;

    /**
     * "课程名称"
     */
    private String className;

    /**
     * "课程分类id"
     */
    private String classTypeId;

    /**
     * "课程分类名称"
     */
    private String classTypeName;

    /**
     * "期望上课时间"
     */
    private String expectTime;
    /**
     * "订单号"
     */
    private String orderCode;

    /**
     * "交付金额"
     */
    private BigDecimal payAmount;

    /**
     * "退款金额"
     */
    private BigDecimal surplusAmount;

    /**
     * "订单状态-退课  0：未退课  1:已退课"
     */
    private String orderStatus;

    /**
     * "审核状态-退课  0：未提交  1：待审核  2：审核通过 3:审核不通过"
     */
    private String approvalStatus;

    /**
     * "退课退款备注"
     */
    private String dropRemark;

    /**
     * "支付状态"
     */
    private String isPay;

    /**
     * "学习状况反馈分数"
     */
    private String learnScore;

    /**
     * "学习状况反馈等级"
     */
    private String leatnGrade;

    /**
     * "学习状况反馈"
     */
    private String learnRemark;

    /**
     * "交付小组id"
     */
    private String payGroupId;

    /**
     * "是否试课"
     */
    private String isTest;

    /**
     * "是否新生"
     */
    private String isNew;

    private String dispatchTime;

    private String dispatchRemark;

    private String remark;
    /**
     * 所属学段：0小学，1初中，2高中
     */
    private String teachSection;
    /**
     * 课程等级：0一级，1二级
     */
    private String classLevel;

    private String delFlag;

    private String payCenterId;

    private String payCenterName;

    private String payGroupName;

    private String learnName;

    private String coachName;

    private String teachMethod;

    private String position;

    private String roleId;

    /**
     * 0：教练登录  1：学管登录
     */
    private String isCoach;

    /**
     * 教练手机号
     */
    private String coachPhone;

    /**
     * 上课时间-用与课前通知消息提醒
     */
    private String upClassTime;

    /**
     * 企微通讯录人员id即企微账号
     */
    private String wxUserId;

}
